package com.song.boot.springstudy.thread.synchronizedtest;

/**
 *  同步方法代码块 使用不同的锁对象
 */
public class CounterCode {
    // 专门用于作为锁的对象
    private final Object lockA = new Object();
    private final Object lockB = new Object();
    public int count = 0;
    public int total = 0;

    public  void addCount() {
        // 只锁与valueA相关的操作
        synchronized (lockA) {
            count++;
        }
    }

    public synchronized void addTotal() {
        // 只锁与valueB相关的操作
        synchronized (lockB) {
            total++;
        }
    }
}